<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script>
        // 添加/删除数组元素方法  push()、pop() 、unshift()、 shift()
        // 我们需要注意一下几点： 1. 这些方法后面是或否跟参数 2. 是否修改原数组 3. 返回值是什么
        // 1. push(参数1, 参数2...)  push 推  给我们的数组末尾 添加一个或者多个元素 。
        var arr = [1, 2];
        // arr.push(3); //把3数组元素添加到 arr 里面（ 最后面）
        console.log(arr.push(3)); // 追加新数组元素  把 新数组的长度返回 
        console.log(arr); // [1,2,3];
        console.log(arr.push(4, 5)); // 5
        console.log(arr);
        // push 总结  push 给我们的数组末尾追加1个或者多个数组元素 有参数  它修改元素组  返回新数组的长度
        // 2. pop()  里面没有参数  删除数组里面的最后一个元素 
        var arr1 = ['a', 'b', 'c'];
        // arr1.pop();  // 删除arr1里面最后一个数组元素 （最后1个）
        console.log(arr1.pop()); // c  arr1.pop() 返回的是  删除的那个数组元素
        console.log(arr1);
        // pop 总结  pop删除数组的最后一个元素  无参数  修改原数组  返回的是 被删除的那个数组元素
        // 3. unshift(参数1,参数2...) 给我们的数组前面追加1个或者多个数组元素
        var arr2 = [1, 2];
        // arr2.unshift(3);
        console.log(arr2.unshift(3)); // 3  返回的是新数组的长度
        console.log(arr2); // [3, 1, 2]
        console.log(arr2.unshift('a', 'b')); // 5
        console.log(arr2); // ["a", "b", 3, 1, 2]
        // 总结 unshift 给我们数组前面追加1个或者多个数组元素 有参数  返回值是  新数组的长度   修改原数组
        // 4. shift()  删除数组的第一个元素 （pop 删除数组的最后一个元素）
        var arr3 = ['a', 'b', ' c'];
        console.log(arr3.shift()); // a 返回  被删除的那个元素
        console.log(arr3);
        // 总结 shift 删除数组的第一个元素 无参数  返回被删除的那个元素 修改原数组
    </script>
</head>

<body>

</body>

</html>